package com.hd123.rumba.user;

import java.util.Date;

import com.hd123.rumba.exception.StringTooLongException;
import com.hd123.rumba.runtime.IVersionedPersistent;

public interface IProfile extends IVersionedPersistent {

  public static final String CAPTION_EMAIL = "电子邮件";
  public static final String CAPTION_PHONEHOME = "家庭电话";
  public static final String CAPTION_PHONEOFFICE = "工作电话";
  public static final String CAPTION_MOBILE = "移动电话";
  public static final String CAPTION_PAGER = "寻呼机";
  public static final String CAPTION_MSN = "MSN";
  public static final String CAPTION_QQ = "QQ";
  public static final String CAPTION_POSTCODE = "邮编";
  public static final String CAPTION_BIRTHDAY = "生日";
  public static final String CAPTION_WEDDING = "结婚纪念日";
  public static final String CAPTION_FAVORITECOLOR = "喜好的颜色";
  public static final String CAPTION_FAVORITENUMBER = "喜好的数字";
  public static final String CAPTION_MARRIED = "已婚";
  public static final String CAPTION_ADDRESS1 = "地址";
  public static final String CAPTION_ADDRESS2 = "地址二";
  public static final String CAPTION_ADDRESS3 = "地址三";
  public static final String CAPTION_CONTACTOR = "联系人";
  public static final String CAPTION_PHONE = "电话";
  public static final String CAPTION_WEBSITE = "网址";
  public static final String CAPTION_FAX = "传真";
  public static final String CAPTION_POSITION = "职位";
  public static final int LENGTH_PHONE = 50;
  public static final int LENGTH_ADDRESS1 = 255;

  public abstract String getAddress1();

  public abstract void setAddress1(String address1) throws StringTooLongException, com.hd123.rumba.exception.StringTooLongException;

  public abstract String getAddress2();

  public abstract void setAddress2(String address2);

  public abstract String getAddress3();

  public abstract void setAddress3(String address3);

  public abstract Date getBirthday();

  public abstract void setBirthday(Date birthday);

  public abstract String getContactor();

  public abstract void setContactor(String contactor);

  public abstract String getEmail();

  public abstract void setEmail(String email);

  public abstract String getFavoriteColor();

  public abstract void setFavoriteColor(String favoriteColor);

  public abstract String getFavoriteNumber();

  public abstract void setFavoriteNumber(String favoriteNumber);

  public abstract String getFax();

  public abstract void setFax(String fax);

  public abstract Boolean getMarried();

  public abstract void setMarried(Boolean married);

  public abstract String getMobile();

  public abstract void setMobile(String mobile);

  public abstract String getMsn();

  public abstract void setMsn(String msn);

  public abstract String getPager();

  public abstract void setPager(String pager);

  public abstract String getPhone();

  public abstract void setPhone(String phone) throws StringTooLongException;

  public abstract String getPhoneHome();

  public abstract void setPhoneHome(String phoneHome);

  public abstract String getPhoneOffice();

  public abstract void setPhoneOffice(String phoneOffice);

  public abstract String getPostcode();

  public abstract void setPostcode(String postcode);

  public abstract String getQq();

  public abstract void setQq(String qq);

  public abstract String getWebsite();

  public abstract void setWebsite(String website);

  public abstract Date getWedding();

  public abstract void setWedding(Date wedding);

  public abstract String getPosition();

  public abstract void setPosition(String position);

}
